package com.crane.framework.service;

import com.crane.framework.entity.Role;
import com.crane.framework.entity.UserRole;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;
import java.util.Map;

/**
 * @author 47349
 * @description 针对表【sys_user_role(用户角色关联表)】的数据库操作Service
 * @createDate 2024-01-17 02:26:07
 */
public interface IUserRoleService extends IService<UserRole> {
  /**
   * 根据用户id获取角色
   *
   * @param userId 用户id
   * @return 角色List
   */
  List<Role> getRoleListByUserId(String userId);

  /**
   * 根据用户id获取角色Sign
   *
   * @param userIdList 用户id
   * @return 角色Map
   */
  Map<String, List<String>> getRoleSignMapByUserId(List<String> userIdList);

  /**
   * 根据用户id获取角色Name
   *
   * @param userIdList 用户id
   * @return 角色Map
   */
  Map<String, List<String>> getRoleNameMapByUserId(List<String> userIdList);

  /**
   * 根据用户id删除
   *
   * @param userId 用户id
   */
  void removeByUserId(String userId);
}
